package es.wtestgen.action.inicio;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;

public class LogoutAction extends DispatchAction{
	
	private static Log log = LogFactory.getLog(LogoutAction.class);
	
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
			log.info("_________Estamos en la clase LogoutAction para cerrar la sesion y eliminar todos los datos de la misma asi como invalidarla.");
		
			request.getSession().removeAttribute("usuario");
			request.getSession().removeAttribute("esAlumno");
			request.getSession().removeAttribute("esProfesor");
			request.getSession().removeAttribute("esAdmin");
			request.getSession().removeAttribute("codAsig");
			request.getSession().removeAttribute("codResp");
			request.getSession().removeAttribute("asignatura");
			request.getSession().removeAttribute("pregunta");
			request.getSession().removeAttribute("asignaturas");
			request.getSession().removeAttribute("alumnos");
			request.getSession().removeAttribute("alumno");
			request.getSession().removeAttribute("respuestas");
			request.getSession().removeAttribute("preguntas");
			request.getSession().removeAttribute("examen");
			request.getSession().removeAttribute("dificultades");
			request.getSession().removeAttribute("preguntasExamen");
			request.getSession().removeAttribute("respuestasPreguntaExamen");
			request.getSession().removeAttribute("numeroPreguntas");
			request.getSession().removeAttribute("respuestasEnSesion");
			request.getSession().removeAttribute("respuestasEliminadasEnSesion");
			request.getSession().removeAttribute("examenesResueltos");
			request.getSession().removeAttribute("notaMedia");
			request.getSession().removeAttribute("notaMediaAsignatura");
			request.getSession().removeAttribute("notasAlumnos");
			request.getSession().removeAttribute("respuestasPreguntaExamen");
			request.getSession().removeAttribute("numExamenesResueltos");
			request.getSession().removeAttribute("numExamenesPropuestos");			
			request.getSession().removeAttribute("notasAlumno");
			
			
			
			request.getSession().invalidate();
			
			
			return mapping.findForward("correcto");
	}

}
